package com.d3works.apps.talent.service;

import com.d3works.apps.hr.db.Employee;
import com.d3works.apps.talent.db.Appraisal;
import com.d3works.exception.D3worksException;
import java.io.IOException;
import java.util.Set;
import javax.mail.MessagingException;

public interface AppraisalService {

  public void send(Appraisal appraisal)
      throws ClassNotFoundException, InstantiationException, IllegalAccessException,
          D3worksException, IOException, MessagingException;

  public void realize(Appraisal appraisal);

  public void cancel(Appraisal appraisal);

  public void draft(Appraisal appraisal);

  public Set<Long> createAppraisals(
      Appraisal appraisalTemplate, Set<Employee> employees, Boolean send)
      throws ClassNotFoundException, InstantiationException, IllegalAccessException,
          D3worksException, IOException, MessagingException;
}
